import { Config } from './config.interface';

export function validateConfig(config: Config): void {
  // 验证数据库配置
  if (config.database.port < 0 || config.database.port > 65535) {
    throw new Error('数据库端口号必须在 0-65535 之间');
  }

  // 验证应用端口
  if (config.app.port < 0 || config.app.port > 65535) {
    throw new Error('应用端口号必须在 0-65535 之间');
  }

  // 验证上传配置
  if (config.upload.maxSize <= 0) {
    throw new Error('上传文件大小限制必须大于 0');
  }
}

export function getEnvFilePath(): string[] {
  const nodeEnv = process.env.NODE_ENV || 'development';
  return [`.env.${nodeEnv}.local`, `.env.${nodeEnv}`, '.env.local', '.env'];
}